package br.com.unip.persistencia;

import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import br.com.unip.modelo.Projeto;

public class ProjetoDao extends Dao {
	public void gravar(Projeto p) throws Exception {
		abrirBanco();
		String query = "INSERT INTO projeto (nome, duracao, nro_depto) VALUES (?, ?, ?)";
		pstmt = con.prepareStatement(query);
		System.out.println("Comando SQL => " + pstmt);
		pstmt.setString(1, p.getNome());
		pstmt.setFloat(2, p.getDuracao());
		pstmt.setInt(3, p.getCod_proj());
		pstmt.execute();
		fecharBanco();
	}
	
	public void deletar(int id) throws Exception {
		abrirBanco();
		String query = "DELETE FROM projeto WHERE projeto.cod_proj = ?";
		pstmt = con.prepareStatement(query);
		System.out.println("Comando SQL => " + pstmt);
		pstmt.setInt(1, id);
		pstmt.execute();
		fecharBanco();
	}
	
	public List<Projeto> listar() throws Exception {
		abrirBanco();
		String query = "SELECT * FROM projeto";
		pstmt = con.prepareStatement(query);
		System.out.println("Comando SQL => " + pstmt);
		ResultSet rs = pstmt.executeQuery();
		Projeto p = null;
		List<Projeto> listar = new ArrayList<Projeto>();
		while (rs.next()) {
			p = new Projeto();
			p.setCod_proj(rs.getInt("cod_proj"));
			p.setNome(rs.getString("nome"));
			p.setDuracao(rs.getFloat("duracao"));
			p.setNro_depto(rs.getInt("nro_depto"));
			listar.add(p);
		}
		fecharBanco();
		return listar;
	}
}
